# 闭包的形成需要满足以下条件：
#   1. 嵌套函数：存在一个外部函数（outer function）和一个内部函数（inner function）。
#   2. 内部函数引用外部变量：内部函数必须访问外部函数作用域中的变量。
#   3. 外部函数返回内部函数：外部函数将内部函数作为返回值返回。

def outer():
    msg = "msg from outer"
    def inner():
        print(msg)
    return inner

inner = outer()
inner() # outer函数有没有执行完?


# 函数执行成功后 为函数执行所分配的内存空间都会清零

